<?php
require_once 'BaseController.php';

/**
 * 近隣店舗一覧コントローラクラス<br />
 *
 * @package 	apamanshop
 * @author　	ishibashi-t
 * @copyright　	
 * @date 		2011/07/22 新規作成
 * @note
 *  ＡＫＢキャンペーン：加盟店メンバーサイト追加対応
 *  対象店舗の半径ｎKmの検索を行い、店舗一覧を表示
 */
class Shop_ShoppagekinrinController extends Shop_BaseController
{
	/**
	 * メインアクション
	 *
	 * @access public
	 * @return void
	 */
	public function indexAction()
	{

		// ヘッダー・フッターを表示しないようにする
		$this->setXPassThroutgh();
		$this->_display_path = APPLICATION_PATH . '/modules/shop/views/scripts/shoppagekinrin.tpl';
		// プレースフォルダを除去
		$this->_remove_place_folder = true;

		//========= 店舗詳細情報 =========
		// モデルインスタンス生成
		$this->_model = new Shop_Model_Detail();
		// 店舗詳細情報取得
		$shopDtlList = $this->_model->getList($this->_params);
		// 表示用に変換
		$this->_data['shopDtl'] = $this->_model->convertData($shopDtlList[0], $this->_apalogurl, $this->_tenpoimageurl);

		//========= 近隣店舗情報 =========
		// モデルインスタンス生成
		$this->_model_kinrin = new Shop_Model_Kinrin();
		// 汎用コントロールテーブルから近隣店舗計算用設定を取得	Ex(半径:5,10,20,40,50　店舗数:5）	※T97PROC_CONTROLを参照のこと
    	$KinrinCtrl = $this->_model_kinrin->getControlSetting("KINRIN_SHOP_CALCULATION_SETTING");
		$ary_radius  = preg_split('/,/',$KinrinCtrl['VAL1']);	// 半径の配列(徐々に対象範囲を広げるため)
		$int_shopnum = $KinrinCtrl['VAL2'];					// 当該数の店舗数以上が取得できた時点で対象範囲の拡大をやめる
		// 近隣店舗導出処理
		foreach ($ary_radius as $int_radius) {
			// 近隣検索半径レンジ(ｍ)設定
			$this->_params['kinrin_range']=$int_radius*1000;	// km を m に
	        // 近隣店舗一覧取得	model/kinrin.phpにて
	        $kinrinList = $this->_model_kinrin->getList($this->_params);
			// カウントがint_shopnum以上になったら抜ける
			if( count($kinrinList) > $int_shopnum ){
				break;
			}
			// echo count($kinrinList)."<br>";
		}
		// 使用した半径を表示用にセット
		$this->_data['kinrinrange'] = $int_radius;
		// 近隣店舗一覧を表示用にセット
		$this->_data['kinrinShop'] = $kinrinList;


        $url = $this->_baseurl . $this->deleteDiagonal(Apm_Config_Shop::URL_DETAIL);
        // 表示用データに変換
        $this->_data['shopList'] = $this->_model_kinrin->convertList($kinrinList, $this->_tenpoimageurl, $url, $this->createUrlParamsForDetail());
        // (株)文字化け対応
        foreach ($this->_data['shopList'] as &$shop){
            $shop['M05_HOUZINMEI'] = Apm_Util::replaceUnicode($shop['M05_HOUZINMEI']);
        }


//print_r($this->_data['kinrinShop']);
	}

}
?>
